Qualcomm Technologies, Inc.

mdss-dsi is the master DSI device which supports multiple DSI host controllers
that are compatible with MIPI display serial interface specification.

DSI Controller:
Required properties:
- compatible:           Should be "qcom,dsi-ctrl-hw-v<version>". Supported
			versions include 1.4, 2.0 and 2.2.
			eg: qcom,dsi-ctrl-hw-v1.4, qcom,dsi-ctrl-hw-v2.0,
			qcom,dsi-ctrl-hw-v2.2, qcom,dsi-ctrl-hw-v2.3,
			qcom,dsi-ctrl-hw-v2.4
			And for dsi phy driver:
			qcom,dsi-phy-v0.0-hpm, qcom,dsi-phy-v0.0-lpm,
			qcom,dsi-phy-v1.0, qcom,dsi-phy-v2.0,
			qcom,dsi-phy-v3.0, qcom,dsi-phy-v4.0, qcom,dsi-phy-v4.1
- reg:                  Base address and length of DSI controller's memory
			mapped regions.
- reg-names:            A list of strings that name the list of regs.
			"dsi_ctrl" - DSI controller memory region.
			"mmss_misc" - MMSS misc memory region.
- cell-index:           Specifies the controller instance.
- clocks:               Clocks required for DSI controller operation.
- clock-names:          Names of the clocks corresponding to handles. Following
			clocks are required:
			"mdp_core_clk"
			"iface_clk"
			"core_mmss_clk"
			"bus_clk"
			"byte_clk"
			"pixel_clk"
			"core_clk"
			"byte_clk_rcg"
			"pixel_clk_rcg"
- gdsc-supply:		phandle to gdsc regulator node.
- vdda-supply:		phandle to vdda regulator node.
- vcca-supply:		phandle to vcca regulator node.
- interrupt-parent	phandle to the interrupt parent device node.
- interrupts:		The interrupt signal from the DSI block.
- qcom,dsi-default-panel:	Specifies the default panel.
- qcom,mdp:		Specifies the mdp node which can find panel node from this.

Bus Scaling Data:
- qcom,msm-bus,name:		String property describing MDSS client.
- qcom,msm-bus,num-cases:	This is the number of bus scaling use cases
				defined in the vectors property. This must be
				set to <2> for MDSS DSI driver where use-case 0
				is used to remove BW votes from the system. Use
				case 1 is used to generate bandwidth requestes
				when sending command packets.
- qcom,msm-bus,num-paths:	This represents number of paths in each bus
				scaling usecase. This value depends on number of
				AXI master ports dedicated to MDSS for
				particular chipset.
- qcom,msm-bus,vectors-KBps:	A series of 4 cell properties, with a format
				of (src, dst, ab, ib) which is defined at
				Documentation/devicetree/bindings/arm/msm/msm_bus.txt.
				DSI driver should always set average bandwidth
				(ab) to 0 and always use instantaneous
				bandwidth(ib) values.

Optional properties:
- label:                  String to describe controller.
- qcom,platform-te-gpio:  Specifies the gpio used for TE.
- qcom,panel-te-source:  Specifies the source pin for Vsync from panel or WD Timer.
- qcom,dsi-ctrl: handle to dsi controller device
- qcom,dsi-phy: handle to dsi phy device
- qcom,dsi-ctrl-num:		Specifies the DSI controllers to use for primary panel
- qcom,dsi-sec-ctrl-num:	Specifies the DSI controllers to use for secondary panel
- qcom,dsi-phy-num:		Specifies the DSI PHYs to use for primary panel
- qcom,dsi-sec-phy-num:		Specifies the DSI PHYs to use for secondary panel
- qcom,dsi-select-clocks:	Specifies the required clocks to use for primary panel
- qcom,dsi-select-sec-clocks:	Specifies the required clocks to use for secondary  panel
- qcom,dsi-display-list:	Specifies the list of supported displays.
- qcom,dsi-manager:       Specifies dsi manager is present
- qcom,dsi-display:       Specifies dsi display is present
- qcom,hdmi-display:      Specifies hdmi is present
- qcom,dp-display:        Specified dp is present
- qcom,<type>-supply-entries:		A node that lists the elements of the supply used by the
					a particular "type" of DSI module. The module "types"
					can be "core", "ctrl", and "phy". Within the same type,
					there can be more than one instance of this binding,
					in which case the entry would be appended with the
					supply entry index.
					e.g. qcom,ctrl-supply-entry@0
					-- qcom,supply-name: name of the supply (vdd/vdda/vddio)
					-- qcom,supply-min-voltage: minimum voltage level (uV)
					-- qcom,supply-max-voltage: maximum voltage level (uV)
					-- qcom,supply-enable-load: load drawn (uA) from enabled supply
					-- qcom,supply-disable-load: load drawn (uA) from disabled supply
					-- qcom,supply-pre-on-sleep: time to sleep (ms) before turning on
					-- qcom,supply-post-on-sleep: time to sleep (ms) after turning on
					-- qcom,supply-pre-off-sleep: time to sleep (ms) before turning off
					-- qcom,supply-post-off-sleep: time to sleep (ms) after turning off
- qcom,mdss-mdp-transfer-time-us:	Specifies the dsi transfer time for command mode
					panels in microseconds. Driver uses this number to adjust
					the clock rate according to the expected transfer time.
					Increasing this value would slow down the mdp processing
					and can result in slower performance.
					Decreasing this value can speed up the mdp processing,
					but this can also impact power consumption.
					As a rule this time should not be higher than the time
					that would be expected with the processing at the
					dsi link rate since anyways this would be the maximum
					transfer time that could be achieved.
					If ping pong split enabled, this time should not be higher
					than two times the dsi link rate time.
					If the property is not specified, then the default value is 14000 us.
- qcom,dsi-phy-isolation-enabled:	A boolean property enables the phy isolation from dsi
					controller. This must be enabled for debugging purpose
					only with simulator panel. It should not be enabled for
					normal DSI panels.
- - qcom,null-insertion-enabled:	A boolean to enable NULL packet insertion feature for DSI controller.
- ports:				This video port is used when external bridge is present.
					The connection is modeled using the OF graph bindings
					specified in Documentation/devicetree/bindings/graph.txt.
					Video port 0 reg 0 is for the bridge output. The remote
					endpoint phandle should be mipi_dsi_device device node.
